package 字符串练习;

public class replace {
    public static void main(String[] args) {
        String s1 = "1234567890";

        //1、截取字符串substring
        //第一，截取前三位
        String ss1 = s1.substring(0, 3);//0-3:包左不包右即索引从0开始，到2结束
        System.out.println(ss1);//输出：123

        //第二：截取后三位
        String ss2 = s1.substring(7);//即从索引第七位开始截取，包括第七位
        System.out.println(ss2);//输出：890

        //第三：字符串拼接
        String a = ss1 + ss2;//可以定义一个字符串，然后将多个已初始化的字符串组合存储
        System.out.println(a);// ss1:123 + ss2:890  输出：123890

        //第四：获取字符串中某一个字符的索引
        String ss = "hello world!";
        int i1 = ss.indexOf('e');
        System.out.println(i1);
        int i2 = ss.indexOf('l');//“l”字符串中出现两次，这里只给出第一次出现的索引
        System.out.println(i2);//输出2
        int i3 = ss.indexOf('l', 3);//这里指定从第三个字符开始找起
        System.out.println(i3);//输出3

        int i4 = ss.lastIndexOf('l');//这里指定查找该字符最后一次“l”出现的索引
        System.out.println(i4);//输出9

        //charAt()，获取索引位置的字符
//        char q1 = ss.charAt(3);//与下面一个同效
        System.out.println(ss.charAt(9));//输出l

        int i5 = ss.indexOf('l', 4);//与上面相同
        System.out.println(i5);//输出9

        //2、替换字符串replace
        //第一，直接替换
        String s2 = "我爱你，TMD！";
        String ss3 = s2.replace("TMD", "***");
        System.out.println(ss3);//输出：我爱你，***！

        //第二：先定义一个数组，将需要替换的字符存储进出，在通过循环的方法，去逐个替换目标字符
        //定义:敏感词库
        String[] arr1 = {"TMD", "CNM", "SB", "NC"};
        //获取原句
        String s3 = "鲁班，我CNM，那个大SB，NC";
        String ss4 = s3;
        //循环替换敏感词
        for (int i = 0; i < arr1.length; i++) {
            ss4 = ss4.replace(arr1[i], "***");
        }
        System.out.println(s3);//输出原句
        System.out.println(ss4);//输出：鲁班，我***，那个大***，***
    }
}
